<script>
	import { useAuth } from '@/utils/permission';
	export default {
		name: 'Authority',
		functional: true,
		props: {
			// 权限代码
			value: {
				type: String | Number | Array,
				default: '',
				required: true
			},
		},
		// computed: {
		//   codeList() {
		//     return this.$store.state.permCodeList;　　//需要监听的数据
		//   },
		// },
		//  watch: {
		//     // codeList(newVal, oldVal) {
		//     //   console.log("新值", newVal, "旧值", oldVal);
		//     // },
		//     codeList: {
		//       handler(newVal, oldVal) {
		//         console.log("新值", newVal, "旧值", oldVal);
		//       },
		// 	  deep: true,
		// 	  immediate: true,
		//     },
		// },
		render(h, context) {
			const that = this;
			const { props, scopedSlots } = context;
			const { hasAuth } = useAuth();
			
			// console.log(scopedSlots);
			
			// 注：打包成APP后安卓5.1版本无法显示。安卓5.1版本上可直接使用 hasAuth + v-if 控制
			
			// 如果校验通过，则返回子组件/插槽内容；否则返回null;
			if (!props.value) {
				return scopedSlots.default();
			}
			return hasAuth(props.value) ? scopedSlots.default() : null;
		}
	};
</script>
